<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        // 对象作业
        // 1.创建一个电脑对象，该对象要有颜色 重量 品牌 型号 可以看电影 听音乐 打游戏和敲代码
        // 思路
        // 电脑是一个泛指的构造函数
        // 分别new几个对象实例 this 指向相应的属性和方法
        // function Kpt(color, zl, pp, xh) {
        //     this.color = color
        //     this.zl = zl
        //     this.pp = pp
        //     this.xh = xh
        //     this.gn = function (xingwei) {
        //         console.log(xingwei);
        //     }
        // }
        // var dall = new Kpt('黑色', '5千克', '戴尔', 'gtx-8')
        // dall.gn(['move', 'musiyk', 'game', 'qiaodaima'])
        // console.log(dall);
        // for (var k in dall) {
        //     console.log(dall[k]);
        // }


        // 2.一个按钮对象 对象中需要包含 宽 高 背景颜色和点击行为
        // function buttom(width, height, bgcolor) {
        //     this.width = width
        //     this.height = height
        //     this.bgcolor = bgcolor
        //     this.dianji = function (queren) {
        //         console.log(queren);
        //     }
        // }
        // var thisbuttom = new buttom('width:20px', 'height:20px', 'bgcolor:pink')
        // console.log(thisbuttom.width);
        // console.log(thisbuttom['height']);
        // console.log(thisbuttom['bgcolor']);
        // thisbuttom.dianji('点击')
        // for (var k in thisbuttom) {
        //     console.log(thisbuttom[k]);
        // }
        // 3.一个车对象 对象要有重量 颜色 牌子 可以载人 拉货和耕田
        // function car(zl, color, pz) {
        //     this.zl = zl
        //     this.color = color
        //     this.pz = pz
        //     this.zy = function (gn) {
        //         console.log(gn);

        //     }
        // }
        // var bengchi = new car('zl:5吨', 'color:黑色', 'pz:人')
        // for (var k in bengchi) {
        //     console.log(bengchi[k]);
        // }
        // bengchi.zy(['载人', '拉货', '耕田'])

        // 函数作业
        // 1.写一个函数 实现反转任意数组
        // 思路
        // 反转需要定义一个空的新数组用于接收反转后的数据
        // 遍历旧数组从下标尾开始 呈递减式把剩余所有数据依次传递到新数组
        // 新数组利用length属性正向接收数据
        // function getArr(arr) {
        //     var newArr = []
        //     for (var i = arr.length - 1; i >= 0; i--) {
        //         newArr[newArr.length] = arr[i]
        //     }
        //     return newArr

        // }
        // var re = getArr([1, 2, 3, 4, 5, 6])
        // console.log(re);

        // 2.实现对数字数组的排序
        // 思路
        // 冒泡排序
        // 双重内外循环 外层控制总趟数 内层控制每趟元素交换的总次数
        // 因为内层交换即可完成相邻元素的比较 所以总的循环次数在额外在减少一次
        // 如果 [j] > [ j + 1 ] 则两者交换数据
        // 交换需要用临时用到临时变量temp
        // function getMaoPao(arr) {
        //     for (var i = 0; i < arr.length - 1; i++) {
        //         for (var j = 0; j < arr.length - i - 1; j++) {
        //             if (arr[j] < arr[j + 1]) {
        //                 var temp = arr[j]
        //                 arr[j] = arr[j + 1]
        //                 arr[j + 1] = temp
        //             }
        //         }
        //     }
        //     return arr
        // }
        // var re = getMaoPao([2, 3, 4, 56, 7, 8, 8, 6, 3, 24, 6, 7, 8, 9, 900, 7, 6, 4, 3, 4, 5, 56565, 3, 445, 45])
        // console.log(re);
        // 小组项目 简易计算器
        // 选择5退出选项总是会先执行输入数字框 不直接退出计算器 所以我直接给了一个if条件 大于4的直接不执行计算器程序 也是被逼无奈 我知道肯定有更好的办法 
        for (var jsq = 1; jsq <= 5; jsq++) {
            jsq = (prompt('欢迎使用简易计算器：' + '\n' + '1.加法运算:' + '\n' + '2.减法运算:' + '\n' + '3.乘法运算:' + '\n' + '4.除法运算:' + '\n' + '5.退出:' + '\n' + '请输入您的选项:'))
            if (jsq <= 4) {//大于4的选项直接不执行代码 不就约等于做到了选项5的功能退出 - - 
                var num1 = (prompt('请输入第一个数'))
                var num2 = (prompt('请输入第二个数'))
                switch (jsq) {
                    case '1':
                        sum = 0
                        sum = parseFloat(num1) + parseFloat(num2)
                        alert(sum)
                        break
                    case '2':
                        var re = 0
                        re = num1 - num2
                        alert(re)
                        break
                    case '3':
                        re = 0
                        re = num1 * num2
                        alert(re)
                        break
                    case '4':
                        re = 0
                        re = num1 / num2
                        alert(re)
                        break
                }
            }
        }















    </script>
</head>

<body>

</body>

</html>